home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / m4-1_0_3.lha / m4-1.0.3 / examples / foreach.m4 < prev    next >
Text File  |  1989-12-23  |  378b  |  12 lines

  1. divert(-1)
  2. # foreach(x, (item_1, item_2, ..., item_n), stmt)
  3. define(`foreach', `pushdef(`$1', `')_foreach(`$1', `$2', `$3')popdef(`$1')')
  4. define(`_arg1', `$1')
  5. define(`_foreach', 
  6.     `ifelse(`$2', `()', ,
  7.         `define(`$1', _arg1$2)$3`'_foreach(`$1', (shift$2), `$3')')')
  8. # traceon(`define', `foreach', `_foreach', `ifelse')
  9. divert
  10. foreach(`x', `(foo, bar, foobar)', `Word was: x
  11. ')
  12.